In signal acquisition of a GNSS system (Global Navigation Satellite System; such as GPS, GLONASS, GALILEO and the like), there are three searching dimensions: visible satellite ID, Doppler frequency, and code phase. One combination of a specific satellite ID, a specific Doppler frequency, and a specific code phase is referred to a “hypothesis”. For a specific satellite, there are totally M×N hypotheses to be tried if there are M possible Doppler frequencies and N code phases. For a GPS (Global Positioning System) signal, the chipping rate of pseudo-random code is 1.023 MHz. That is, there are 1023 chips in one millisecond. If the chip spacing in the code phase dimension is taken as ½ chip, there will be 1023×2=2046 bins in code phase dimension for a C/A code receiver. In general, it is difficult to decrease the number of the bins or equivalently the search range of code phase to be searched if there is no prior precise information about timing, satellite and user position.
As mentioned, for the specific satellite, there is still Doppler frequency to be searched in signal acquisition. The satellite movement with respect to a user causes the real Doppler frequency shift. For a stationary user, the maximum Doppler frequency shift is about ±5 kHz, for example. Therefore the search range is 10 kHz. However, other factors may also enlarge the search range in addition to the real Doppler frequency shift. For example, the carrier frequency of the received IF signal might be biased by the local clock. A GNSS receiver uses a TCXO (Temperature Compensated Crystal Oscillator) or other kinds of oscillators to provide a precise local clock signal but with an unknown bias and specified drift range. Such a clock bias and drift will affect the carrier frequency of the GNSS baseband signal and result in an effective Doppler frequency shift.
Another factor resulting in more Doppler frequency search bins is the long coherent integration time used in the acquisition. Long coherent integration time is usually required for weak signal acquisition to improve SNR and thus detection probability. Long coherent integration time can improve the efficiency of signal detection with a trade-off of more Doppler frequency bins to be searched. As the coherent integration time is extended, the allowable Doppler frequency error is reduced. For example, the allowable Doppler frequency error is less than 1 kHz for a coherent integration time of 1 ms, while less than 50 Hz Doppler frequency error is allowable for a coherent integration time of 20 ms. In an AGPS (Assisted GPS or Aided GPS) system, where very long coherent integration time such as two seconds or more may be used after the aiding of the known data bit sequence, the number of Doppler frequency search bins is increased greatly even the search range is the same or reduced. As discussed above, there are various factors that influence the Doppler frequency search range and number of search bins. Accordingly, it is possible that the number of Doppler frequency search bins changes dynamically under different situations. Hence, we need a flexible Doppler search correlator.
It is important to search Doppler frequencies of all the satellites as fast as possible to reduce TTFF (Time To First Fix), which is a main performance metric of the satellite communication receiver. Moreover, the acquired Doppler frequencies of the first few satellites can be used to adjust and reduce the Doppler frequency search range of the remaining satellites. Then, the same number of correlators can be used to search the reduced Doppler frequency range with longer coherent integration time used to enhance acquisition performance.
Operation complexity of Doppler frequency search will be increased when the Doppler frequency search range is wide, or the Doppler frequency search bin is narrow. That is, the more Doppler frequency bins are to be searched, to more complicate the operation is. The operation complexity for Doppler frequency search requires large memory size and high power consumption.
FIG. 1 shows a typical correlator of a GNSS receiver. A satellite signal is received and amplified. Then it is down-converted to IF (Intermediate Frequency) stage. At this stage, the received signal is in analog form. Then, the received signal is converted into digital form by an ADC (analog-to-digital converter) 108. The digital signal from the ADC 108 is down converted by means of a carrier NCO 112 (Numerically Controlled Oscillator), phase shifters 114, 116 and mixers 121, 122. The mixed result is a complex signal with in-phase and quadrature components. The in-phase and quadrature components are subjected to multiplication in multipliers 141˜146 with reference PRN code generated by an E/P/L (Early/Prompt/Late) PRN code generator 120. The E/P/L PRN code generator 120 is controlled by a code NCO 123. The multiplication values are respectively accumulated by the accumulators 131˜136 to generate the correlation results IE, IP, IL and QE, QP, QL. The integrated signals are led to a receiver processor 110. The receiver processor 110 processes these values. One correlator is required to search one Doppler frequency bin.
FIG. 2 schematically and generally shows another correlator structure with post correlation FFT. A signal received by an antenna 201 is down-converted to IF stage and sampled from analog to digital domain by a RF receiver 203. The Doppler and IF center frequency of the IF signal are then removed by the carrier removal unit 205. The complex signal components, in-phase and quadrature, are then processed by code despreading unit 207 and coherently integrated by IAD (Integration And Dump) unit 209. The coherent integration results of the I and Q components are accumulated in a buffer 211. The coherent integration time of IAD 209 is adjustable from 1 to 5 ms and 1 ms is usually used, for example. When several I and Q 1 ms-integration values are collected in a row, 20 IAD values for example are passed to an FFT (Fast Fourier Transfer) engine 213 to perform frequency domain analysis. Twenty Doppler frequency bins can be searched at the same time by checking the FFT output values, which can be integrated coherently or incoherently over several 20 ms by using a coherent sample RAM 215, an incoherent sample RAM 221, a magnitude computation unit 217 and an IAD unit 219. In this structure, the additional data buffer unit 211 is required to store the correlations samples (i.e. integration results) before Doppler frequency searches (i.e. FFT operation). The buffer size will be very large if a parallel correlator bank is used to search wide ranges of satellite, code and Doppler dimensions at the same time. Large memory size of the buffer introduces high cost and much power consumption due to the operations of writing and reading the data buffer. In addition to the problem of high power consumption, the post correlation FFT correlator structure has a disadvantage that the parallel Doppler frequency hypotheses are fixed. That is, such a correlator can only compute correlations on fixed discrete frequencies. The interval between the Doppler frequencies to be searched is unchangeable. Therefore, the Doppler frequency hypotheses are limited and inflexible.